home *** CD-ROM | disk | FTP | other *** search
- /*
- ResolveTools.h
-
- C Include file for building Claris® Resolve™ external tools
-
- MPW-compatible declarations are assumed
- use #define ThinkC for Think C compatibility
- */
-
- #ifndef numfuncs
- #define numfuncs 1
- #endif
-
- typedef struct _RELT /* Routine list element */
- {
- #ifdef ThinkC
- ProcPtr pfunc; /* Pointer to routine */
- #else
- void (*pfunc)(PVAL, PVAL); /* Pointer to routine */
- #endif
- char *name; /* Routine name */
- short narg; /* Number of arguments */
- } RELT, *PRELT;
-
- typedef struct _ROUT /* Routine list */
- {
- short nrout; /* Number of routines */
- #ifdef ThinkC
- ProcPtr exitfunc; /* Func pntr to exit routine */
- #else
- void (*exitfunc)(); /* Func pntr to exit routine */
- #endif
- RELT relts[numfuncs]; /* Func pntr to routine */
- } ROUT, *PROUT;
-
- /* flag values for arguments and returns */
- #define NUMERIC 0
- #define STRING 1
- #define ERR 2
-
- typedef struct _val
- {
- union
- {
- #ifdef ThinkC
- short double numeric; /* numeric argument or return */
- #else
- double numeric; /* numeric argument or return */
- #endif
- char *string; /* text argument or return */
- short err; /* error argument or return */
- unsigned long private[3]; /* private Resolve™ information */
- } val;
-
- short flag; /* type of argument or return */
- } VAL, *PVAL;
-